/*
 * > /*
>  * INSANE - Interactive Structural Analysis Environment
>  *
>  * Copyright (C) 2003-2004
>  * Universidade Federal de Minas Gerais
>  * Escola de Engenharia
>  * Departamento de Engenharia de Estruturas
>  *
>  * Author's email :     insane@dees.ufmg.br
>  * Author's Website :   http://www.dees.ufmg.br/insane
>  *
>  * This program is free software; you can redistribute it and/or
>  * modify it under the terms of the GNU General Public License
>  * as published by the Free Software Foundation; either version 2
>  * of the License, or any later version.
>  *
>  * This program is distributed in the hope that it will be useful,
>  * but WITHOUT ANY WARRANTY; without even the implied warranty of
>  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>  * GNU General Public License for more details.
>  *
>  * You should have received a copy of the GNU General Public License
>  * along with this program; if not, write to the Free Software
>  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-
> 1307, USA.
 *
 */
package br.ufmg.dees.insane.ui.rich.learn.learn_view.equation_view.command;

import java.util.ArrayList;

import javax.swing.JFrame;

import br.ufmg.dees.insane.ui.rich.learn.learn_controller.Controller;
import br.ufmg.dees.insane.ui.rich.learn.learn_view.LearnInterface;
import br.ufmg.dees.insane.ui.rich.learn.learn_view.command.Command;

/**
 * @author Nicoliello, Renata & Pitangueira, Roque
 * @since	Junho 2005
 */
public class SetNodeByNodeEquationsCommand implements Command{
	
	private LearnInterface parent;
	
//*****************************************************************************
	
    /** Creates new AutomaticEquationsCommand */
    public SetNodeByNodeEquationsCommand(JFrame parent) {
        this.parent = (LearnInterface)parent;
    }
	
//*****************************************************************************
	
	/** Execute method. */
    public void execute() {
		
		ArrayList nds = parent.getView().getController().getSelection();
		
		System.out.println("nos selecionados =" + nds);
		
		if (nds.size() == 0) {
			parent.addOutputText("There is no nodes in model.");
			return;
		}
	
    	//StructuralMech sm = new StructuralMech();
    	//sm.setFemModel(parent.getView().getController().getModel());
		((Controller)parent.getView().getController()).getDriver().numberNodeByNodeEquations(nds);
		parent.getView().getController().compose();
		parent.getView().getController().selectAll();
		parent.getView().getDrawingArea().repaint();
		parent.getView().getController().unSelectAll();
//		parent.addToUndo((Command)this.clone());
	}
    
//*****************************************************************************
	
    /**
     * Impossible to undo - not implemented.
     */
    public void undo() {}
    
//*****************************************************************************
	
    /**
     * Impossible to redo - not implemented.
     */
    public void redo() {}
	
//*****************************************************************************


}
